﻿using B.S.BaseData.ErrorCode;
using B.S.DataBase.EFCoreServiers.Dtos.Roles;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace B.S.DataBase.EFCoreServiers.IServices.Roles
{
    public interface IRoleServices
    {
        /// <summary>
        /// 获取角色列表
        /// </summary>
        /// <returns>角色列表</returns>
        Task<ApiResult<ApiPaging<GetRoleResponseDto>>> GetRoleListAsync(GetRoleDto roleDto);
        /// <summary>
        /// 编辑角色信息
        /// </summary>
        /// <param name="roleName"></param>
        /// <param name="description"></param>
        /// <returns></returns>
        Task<ApiResult> UpdateRoleAsync(UpdateRoleDto roleDto);
        /// <summary>
        /// 新增角色信息
        /// </summary>
        /// <param name="RoleDto"></param>
        /// <returns></returns>
        Task<ApiResult> AddRoleAsync(AddRoleDto RoleDto);
        /// <summary>
        /// 删除角色信息
        /// </summary>
        /// <param name="roleId"></param>
        /// <returns></returns>
        Task<ApiResult> DeleteRoleAsync(int roleId);
        /// <summary>
        /// 修改角色状态
        /// </summary>
        /// <param name="roleId"></param>
        /// <returns></returns>
        Task<ApiResult> UpdateStateRoleAsync(int roleId);
    }
}
